home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Interactive 7
/
PC World Interactive 7.iso
/
program
/
qbprog.EXE
/
FONT2QLB.BAS
< prev
next >
Wrap
BASIC Source File
|
1996-01-21
|
3KB
|
86 lines
'===================== Açìklamalar =================================
'Bu program font dosyasìnì QLB hale getirir.
'LIB.EXE, LINK.EXE, TASM.EXE isimli programlar path içinde varsayìlìr
'====================== Program =====================================
DECLARE SUB DosyaYaz (Enter$)
DECLARE SUB Hata (A$)
Kitap$ = "c:\basic\qbxqlb" 'versiyon 4.5 için ilgili kütüphaneyi
'bu deºiƒkene atayìnìz..
Kitap$ = Kitap$ + ";"
SCREEN 2: SCREEN 0: COLOR 7, 1: CLS
Enter$ = CHR$(13) + CHR$(10)
Oku$ = COMMAND$
IF Oku$ = "" THEN
Mesaj$ = "Olb hale getirilecek Font dosyasì belirtilmedi !!"
Mesaj$ = Mesaj$ + Enter$ + "Kullanìm formatì ≈FONT2OLB FONT.FNT≈"
Hata Mesaj$
END IF
IF INSTR(Oku$, ".") = 0 THEN Oku$ = Oku$ + ".FNT"
V = INSTR(Oku$, "."):
Yaz$ = LEFT$(Oku$, V) + "ASM"
Dosya$ = LEFT$(Oku$, V - 1)
OPEN Oku$ FOR BINARY AS #1
IF LOF(1) = 0 THEN CLOSE #1: KILL Oku$: Hata (Oku$ + " Bulunamadì !!")
OPEN Yaz$ FOR BINARY AS #2
IF LOF(2) <> 0 THEN Hata (Yaz$ + " isminde bir dosya var !!")
'======================= Asm dosya üretimi ============================
DosyaYaz (Enter$)
'======================= Asm'nin derlenmesi ============================
CLS
PRINT "Bekleyin..."
A$ = "Tasm " + Dosya$ + "/m": SHELL A$: CLOSE #2: KILL Yaz$
A$ = "Del " + Dosya$ + ".lib": SHELL A$
A$ = "Lib " + Dosya$ + " +" + Dosya$ + ",;": SHELL A$
A$ = "Link/q " + Dosya$ + ".lib," + Dosya$ + ".qlb,," + Kitap$: SHELL A$
CLS
PRINT Dosya$; ".QLB Üretildi...Basic'e QBX/L "; Dosya$; " ƒeklinde baƒkayìnìz.."
END
SUB DosyaYaz (Enter$)
A$ = ";Yapìm: Gürol DEMÿR, 1996" + Enter$: PUT #2, , A$
A$ = "jumps" + Enter$: PUT #2, , A$
A$ = ".model medium" + Enter$: PUT #2, , A$
A$ = ".code" + Enter$: PUT #2, , A$
A$ = ";=====================================================================" + Enter$: PUT #2, , A$
A$ = ";DECLARE SUB FontGrafik()" + Enter$: PUT #2, , A$
A$ = "Public FontGrafik" + Enter$: PUT #2, , A$
A$ = "FontGrafik Proc far" + Enter$: PUT #2, , A$
A$ = " Push ax bx cx dx es bp" + Enter$: PUT #2, , A$
A$ = " Lea bp, FontData" + Enter$: PUT #2, , A$
A$ = " Mov bx, 0" + Enter$: PUT #2, , A$
A$ = " Mov dx, 14" + Enter$: PUT #2, , A$
A$ = " Push cs" + Enter$: PUT #2, , A$
A$ = " Pop es" + Enter$: PUT #2, , A$
A$ = " Mov cx, 16" + Enter$: PUT #2, , A$
A$ = " Mov ax, 1121h" + Enter$: PUT #2, , A$
A$ = " Int 10h" + Enter$: PUT #2, , A$
A$ = " Pop bp es dx cx bx ax" + Enter$: PUT #2, , A$
A$ = " Retf" + Enter$: PUT #2, , A$
A$ = "ENDP FontGrafik" + Enter$: PUT #2, , A$
A$ = ";=====================================================================" + Enter$: PUT #2, , A$
A$ = "FontData:": PUT #2, , A$
I = 19
CLS
FOR y = 1 TO LOF(1)
LOCATE 1, 1: PRINT "Yapìlìyor %"; y * 100 \ LOF(1)
IF I = 19 THEN B$ = Enter$ + "Db ": PUT #2, , B$: I = 0
I = I + 1: A$ = " ": GET #1, , A$
A$ = LTRIM$(STR$(ASC(A$))): PUT #2, , A$
IF LOC(1) = LOF(1) THEN EXIT FOR
IF I < 19 THEN C$ = ",": PUT #2, , C$
NEXT
A$ = Enter$ + ";=====================================================================" + Enter$: PUT #2, , A$
A$ = "End" + Enter$: PUT #2, , A$
END SUB
SUB Hata (A$)
PRINT A$: END
END SUB